/**
 * UFCG - CEEI - DSC- SI1
 * Projeto da Disciplina Sistema de Informacao 1 - 2011.1
 * 
 * Professor: Hyggo Almeida
 * 
 * Alunos: Felipe de Sousa - felipeso@lcc.ufcg.edu.br
 * 		   Matheus Sampaio - matheusss@lcc.ufcg.edu.br
 *         Henrique Florencio - henriquecf@lcc.ufcg.edu.br
 *         Claudio Cardoso - claudiocaj@lcc.ufcg.edu.br
 * 		   Julio Henrrique - juliohr@lcc.ufcg.edu.br
 * 
 */
package controller;

import model.SalaIF;
import exception.ExceptionAtributoInvalido;
import exception.ExceptionIdentificacaoInvalida;
import exception.ExceptionSalaIdJaExiste;
import exception.ExceptionSalaNaoExiste;
import exception.ExceptionTipoInvalido;

public class SalasFacede {

    private GerenciadorDeSalas genSala = GerenciadorDeSalas.getInstance();

    public void adicionarSala(String id, int capacidade, String finalidade,
	    String tipo) throws ExceptionIdentificacaoInvalida,
	    ExceptionTipoInvalido {

	genSala.adicionarSala(id, capacidade, finalidade, tipo);

    }

    public void adicionarSala(String id, int capacidade, String finalidade,
	    String tipo, String apelido) throws ExceptionIdentificacaoInvalida,
	    ExceptionSalaIdJaExiste, ExceptionTipoInvalido {

	genSala.adicionarSala(id, capacidade, finalidade, tipo, apelido);

    }

    public void adicionarSala(String id, int capacidade, String finalidade,
	    String tipo, String apelido, boolean aberto)
	    throws ExceptionIdentificacaoInvalida, ExceptionTipoInvalido {

	genSala.adicionarSala(id, capacidade, finalidade, tipo, apelido,
			aberto);

    }

    public String getAtributoSala(String id, String atributo)
	    throws ExceptionSalaNaoExiste, ExceptionAtributoInvalido {
	return genSala.getAtributoSala(id, atributo);
    }

    public boolean containsIDSalasBoolean(String id) {
	return genSala.containsIDSalasBoolean(id);
    }

    public SalaIF cotainsIDSalas(String id) {
	return genSala.cotainsIDSalas(id);
    }

    public void removerSala(String idSala) throws ExceptionSalaNaoExiste {
	genSala.removerSala(idSala);
    }

    public void zerarSistema() {
	genSala.zerarSistema();
    }

    public void encerrarSistema() {
	genSala.encerrarSistema();
    }

}
